﻿namespace OT.HikiSecureCenterApis.Service.Event.Res
{
    public class ResEventsSearch
    {
        /// <summary>
        /// 事件id
        /// </summary>
        public string id { get; set; }
        /// <summary>
        /// 事件规则id
        /// </summary>
        public string eventRuleId { get; set; }
        /// <summary>
        /// 事件规则名称
        /// </summary>
        public string ruleName { get; set; }
        /// <summary>
        /// 事件开始时间，ISO8601格式：yyyy-MM-ddTHH:mm:ss.zzz+当前时区，例如北京时间：2018-07-26T15:00:00.000+08:00
        /// </summary>
        public string startTime { get; set; }
        /// <summary>
        /// 事件结束时间，ISO8601格式：yyyy-MM-ddTHH:mm:ss.zzz+当前时区，例如北京时间：2018-07-26T15:00:00.000+08:00
        /// </summary>
        public string endTime { get; set; }
        /// <summary>
        /// 事件等级,1-低，2-中，3-高
        /// </summary>
        public int eventLevel { get; set; }
        /// <summary>
        /// 事件等级value，低、中、高
        /// </summary>
        public string eventLevelValue { get; set; }
        /// <summary>
        /// 事件等级颜色，RGB格式，例如#AE8D06
        /// </summary>
        public string eventLevelColor { get; set; }
        /// <summary>
        /// 事件类型名称
        /// </summary>
        public string eventTypeName { get; set; }
        /// <summary>
        /// 事件处理意见
        /// </summary>
        public string remark { get; set; }
        /// <summary>
        /// 事件处理状态，0-未处理，1-已处理
        /// </summary>
        public int handleStatus { get; set; }
        /// <summary>
        /// 事件记录列表
        /// </summary>
        public List<EventLogSrcListItem> eventLogSrcList { get; set; }
    }

    public class EventLogSrcListItem
    {
        /// <summary>
        /// 事件源id
        /// </summary>
        public string id { get; set; }
        /// <summary>
        /// 事件id
        /// </summary>
        public string eventLogId { get; set; }
        /// <summary>
        /// 事件分类，详见附录A.62
        /// https://open.hikvision.com/docs/0f6e8e1e41a14304aeecd287530b9c95?curNodeId=0f6e8e1e41a14304aeecd287530b9c95#f1c62a5b
        /// </summary>
        public string ability { get; set; }
        /// <summary>
        /// 事件类型，参考附录D.1，附录D
        /// https://open.hikvision.com/docs/2a1f18f349cb4f65ab7857b7ad1c2b24?curNodeId=2a1f18f349cb4f65ab7857b7ad1c2b24
        /// </summary>
        public int eventType { get; set; }
        /// <summary>
        /// 事件类型名称
        /// </summary>
        public string eventTypeName { get; set; }
        /// <summary>
        /// 事件源编号
        /// </summary>
        public string resIndexCode { get; set; }
        /// <summary>
        /// 事件源类型，详见附录A.63
        /// https://open.hikvision.com/docs/0f6e8e1e41a14304aeecd287530b9c95?curNodeId=0f6e8e1e41a14304aeecd287530b9c95#f3db5bf5
        /// </summary>
        public string resType { get; set; }
        /// <summary>
        /// 事件源名称
        /// </summary>
        public string resName { get; set; }
        /// <summary>
        /// 所属区域编号
        /// </summary>
        public string regionIndexCode { get; set; }
        /// <summary>
        /// 所属区域名称
        /// </summary>
        public string regionName { get; set; }
        /// <summary>
        /// 所属位置，详见附录A.81 安装位置
        /// https://open.hikvision.com/docs/0f6e8e1e41a14304aeecd287530b9c95?curNodeId=0f6e8e1e41a14304aeecd287530b9c95
        /// </summary>
        public string locationIndexCode { get; set; }
        /// <summary>
        /// 所属位置名称
        /// </summary>
        public string locationName { get; set; }
        /// <summary>
        /// 扩展字段1，暂不使用
        /// </summary>
        public string extend1 { get; set; }
        /// <summary>
        /// 扩展字段2，暂不使用
        /// </summary>
        public string extend2 { get; set; }
        /// <summary>
        /// 事件开始时间，ISO8601格式：yyyy-MM-ddTHH:mm:ss.zzz+当前时区，例如北京时间：2018-07-26T15:00:00.000+08:00
        /// </summary>
        public string startTime { get; set; }
        /// <summary>
        /// 事件扩展信息
        /// </summary>
        public string data { get; set; }
    }

}
